
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Midterm_Lab6</title>
<link rel="stylesheet" type="text/css"
	href="view/public/css/bootstrap.css" />
<link rel="stylesheet" type="text/css"
	href="view/public/css/bootstrap-responsive.css" />
</head>


<?php 
Class Product{
	protected $productId;
	protected $productName;
	protected $unitPrice;
	protected $discount;

	public function __construct($productId,$productName,$unitPrice,$discount){
		$this->productId = $productId;
		$this->productName = $productName;
		$this->unitPrice = $unitPrice;
		$this->discount = $discount;
		if($this->discount == 0){
			$this->discount = "-";
		}
	}
	public function __get($data){
		return $this->$data;
	}
	public function __set($data,$value){
		$this->$data = $value;
	}
}
Class Book extends Product{

	private $page;

	public function __construct($productId, $productName, $unitPrice, $discount, $page){
		parent::__construct($productId, $productName, $unitPrice, $discount);
		$this->page = $page;
	}
	public function __get($data){
		return $this->$data;
	}
}
Class Customer{
	private $customerName;
	private $address = array();
	private $customerId;
	private $degree;


	public function __construct($customerId,$customerName,$degree,$address){
		$this->customerName=$customerName;
		$this->customerId=$customerId;
		$this->degree=$degree;
		$this->address=$address;

	}
	public function  __get($data){
		return $this->$data;
	}
	public function getAddress(){
		return explode(",",$this->address);
	}
	public function addOrder($newOrder){
		$this->order[]=$newOrder;
	}
}


Class Store{

	private $sName;
	private $sAddress;

	public function __construct($sName,$sAddress){
		$this->sName = $sName;
		$this->sAddress = $sAddress;
	}
	public function __get($data){
		return $this->$data;
	}
}



Class Order{

	private $product;
	private $amount;

	public function __construct($product,$amount){
		$this->product = $product;
		$this->amount = $amount;
	}
	public function __get($data){
		return $this->$data;
	}
}
$product1 = new Product(1001,"เครื่องกรองน้า",2500,0,3);
$product2 = new Product(1002,"ประตูเหล็กดัด",1600,0,1);
$product3 = new Product(1003,"ผ้าม่านประตู",780,2,2);
$product4 = new Product(1004,"เครื่องปรับอากาศ",5600,10,1);
$product5 = new Product(1005,"โต๊ะประชุมสานักงาน",2300,5,1);

$book1 = new Book(3001,"หนังสือ JAVA",600,10,569);
$book2 = new Book(3002,"DVD ภาพยนต์",600,5,300);
$book3 = new Book(1001,"เครื่องกรองน้า",2500,0,3);
$book4 = new Book(1002,"ประตูเหล็กดัด",1600,0,1);
$book5 = new Book(1003,"ผ้าม่านประตู",780,2,2);
$book6 = new Book(1004,"เครื่องปรับอากาศ",5600,10,1);
$book7 = new Book(1005,"โต๊ะประชุมสานักงาน",2300,5,1);


$customer = new Customer("CUS0001","นายเทวัญ สกุลเทเวศน์","VIP",array("23 หมู่บ้านอโศก ตาบลหนองหอย อาเภอสวรรค์ จังหวัดเพชรบูรณ์","19 หมู่ 7 ตาบลหนองหาร อาเภอสันทราย จังหวัดเชียงใหม่"));
$store = new Store("ร้านอรุโณทัย","บ้านเลขที่ 23 หมู่ 4 ตาบลหนองหาร อาเภอสันทราย จังหวัดเชียงใหม่");

$customer->addOrder(new Order($book3,1));
$customer->addOrder(new Order($book4,1));
$customer->addOrder(new Order($book5,1));
$customer->addOrder(new Order($book6,1));
$customer->addOrder(new Order($book7,1));



echo "<h3>ใบเสร็จรับเงิน</h3><hr>";
echo "<b>".$store->sName."  : ".$store->sAddress."</b>";
echo "<br><br>";
echo "ชื่อผู้ซื้อ : ".$customer->customerName."<br>";
$address = $customer->getAddress();
for ($i = 0; $i < count($address); $i++) {
	echo "ข้อมูลที่อยู่ ".($i+1)." : ".$address[$i]."<br>";
}
echo "<br><b>รายการสั่งซื้อ</b><br><br>";
echo "<table class=\"table table-bordered\">";
echo "<th>ลำดับ</th><th>รายการ</th><th>จำนวน</th><th>หน่วยละ</th><th>ส่วนลด</th><th>จำนวนเงิน</th>";
$list = $customer->Order;
$total = 0;
for ($i = 0; $i < count($list); $i++) {
	$dc = $list[$i]->product->discount/100;
	$sum = ($list[$i]->Product->unitPrice*$list[$i]->amount)-floor(($dc)*($list[$i]->product->unitPrice*$list[$i]->amount));
	$total += $sum;
	echo "<tr>";
	echo "<td>".($i+1)."</td>";
	echo "<td>".$list[$i]->product->productName."</td>";
	echo "<td>".$list[$i]->amount."</td>";
	echo "<td>".$list[$i]->product->unitPrice."</td>";
	echo "<td>".floor($dc*$list[$i]->product->unitPrice)."</td>";
	echo "<td>".number_format($sum,2)."</td>";
	echo "</tr>";
}
$vat = $total*0.07;
$final = $total + $vat;
echo "<tr>";
echo "<td colspan=\"5\"><b>ราคารวม</b></td><td>"._print(number_format($total,2), "red")."</td>";
echo "</tr><tr>";
echo "<td colspan=\"5\"><b>ภาษีมูลค่าเพิ่ม 7 %</b></td><td>"._print(number_format($vat,2), "red")."</td>";
echo "</tr><tr>";
echo "<td colspan=\"5\"><b>ราคารวมภาษีมูลค่าเพิ่ม</b></td><td><b>"._print(number_format($final,2), "red")."</b></td>";
echo "</tr>";
echo "</table>";
date_default_timezone_set("Asia/Bangkok");
echo "เวลาที่ทำการออกใบเสร็จ : ".date("Y:m:d H:i:s");
function _print($s,$c){
	return "<font color=\"$c\">$s</font>";
}
?>
</div>